[Duvida]Inverter caracteres de um valor inteiro

1. [Duvida]Inverter caracteres de um valor inteiro

Enilton
Apendice

(usa Ubuntu)

Enviado em 28/05/2010 - 21:09h

Olá... Qual a função pra inverter os caracteres de um numero inteiro? Ex: 532 pra retornar 235? Lembrando que não se trata de strig char, mas sim de int.

Grato!


  


2. Re: [Duvida]Inverter caracteres de um valor inteiro

André
andrezc

(usa Debian)

Enviado em 28/05/2010 - 21:40h

Se for utilizar um array fica mais fácil. Dá uma olhada em:
http://www.guiadohardware.net/comunidade/inverter-ordem/808699/


3. RE: [DUVIDA]INVERTER CARACTERES DE UM VALOR INTEIRO - Solução Exata!

Felyp Henrique
crazyy

(usa Debian)

Enviado em 31/10/2017 - 13:21h

Existe uma função da biblioteca STDLIB.H que faz essa conversão, sua forma geral é:



#include <stdlib.h>
int atoi(const char *str);



O valor de retorno da função é do tipo inteiro. Não me lembro bem, mas acredito que retorna o valor inteiro pelo fato da conversão acontecer em super baixo nível de máquina ou, porque a função recebera a str convertida em inteiro (coisas do gênero) - lembrando, é o que eu ME LEMBRO, não sei se é exatamente isto. Você deve passar como argumento da função uma constante de caractere(s), por exemplo:



#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void main(){
char str[20];
int minhaVariavelInteira;

// Funcao da biblioteca String.h, serve para copiar uma constante de
// caracteres para um vetor já declarado e inicializado/não inicializado:
strcpy(str, "99999");

// Variavel do tipo inteiro recebe str convertida em inteiro:
minhaVariavelInteira = atoi(str);

printf("%i \n\n", minhaVariavelInteira);

system("PAUSE");
}





4. Você pode usar uma função recursiva !

Nicola Tesla
NicolaTesla17

(usa Ubuntu)

Enviado em 03/11/2017 - 16:43h

Olha. Esse códico não é meu OK ( e desculpe pois não me lembro mais em que lugar apredir ele), mas a lógica dele é simples de enterder. Da uma olhada no códico abaixo e ver se é o que você procura.
 int inverter(int numero){
if(numero==0)return numero;

else{
printf("%d", numero % 10);
numero=numero/10;
return inverter(numero);
}
return 0;

}







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts